package com.john.bms.mapper.system;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.john.bms.model.system.role.RolePage;
import com.john.bms.model.system.role.SysRole;

import java.util.List;
import java.util.Map;

/**
 * @Author:张家小帅哥
 * @Date:2020/5/30
 * @Version:1.0
 * @Description:TODO
 */
public interface RoleMapper extends BaseMapper<SysRole> {

    /**
     * 获取角色下拉集合
     *
     * @return
     */
    List<Map<String, String>> selectRoleNameList();

    /**
     *
     * @return
     */
    List<Map<String, String>> selectRoleNameAndIdList();

    /**
     * @param rolePage
     * @return
     */
    List<SysRole> selectPageList(RolePage rolePage);

    /**
     * 修改角色状态
     *
     * @param rId
     * @param state
     * @return
     */
    int updateState(int rId, int state);

    /**
     * 修改用户信息
     * @param sysRole
     * @return
     */
    int updateRole(SysRole sysRole);

    /**
     * 删除用户
     *
     * @param rId
     * @return
     */
    int deleteRole(int rId);

    /**
     * 根据用户id查询角色
     * @param uId
     * @return
     */
    List<SysRole> selectRoleListByUserId(String uId);

    /**
     * 添加角色权限
     * @param rId
     * @param menuIdList
     * @return
     */
    int insertRoleMenu(int rId,List<String> menuIdList);


    /**
     * 删除权限
     * @param rId
     * @return
     */
    int deleteByPrimaryKey(int rId);

    /**
     * 查询分配的权限
     * @param rId
     * @return
     */
    List<Integer> selectRoleMenuList(int rId);

}
